package com.cmc.cloud.cmclink.doc.vo.specialcargooogvo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 特种货审批oog更新 Request VO
 *
 * @author codegen
 */
@Schema(description = "管理后台 - 特种货审批oog更新 Request VO")
@Data
@ToString(callSuper = true)
public class SpecialCargoOogUpdateReqVO {

    @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "16403")
    @NotNull(message = "主键不能为空")
    private Long id;

    @Schema(description = "分体装卸货物 BB cargo")
    private Boolean breakbulkCargo;

    @Schema(description = "长度")
    private Integer overallLength;

    @Schema(description = "宽度", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "宽度不能为空")
    private Integer overallWidth;

    @Schema(description = "高度")
    private Integer overallHeight;

    @Schema(description = "前超", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "前超不能为空")
    private Integer overForward;

    @Schema(description = "后超", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "后超不能为空")
    private Integer overAfter;

    @Schema(description = "左超", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "左超不能为空")
    private Integer overLeft;

    @Schema(description = "右超", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "右超不能为空")
    private Integer overRight;

    @Schema(description = "上超", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "上超不能为空")
    private Integer overHeight;

    @Schema(description = "货物描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "你说的对")
    @NotBlank(message = "货物描述不能为空")
    @Length(max = 500, message = "货物描述支持最大长度{max}")
    private String cargoDescription;

    @Schema(description = "角柱状态", example = "2")
    @Length(max = 64, message = "角柱状态支持最大长度{max}")
    private String cornerPostStatus;

    @Schema(description = "老系统角柱状态字段值导入这个字段")
    @Length(max = 115, message = "老系统角柱状态字段值导入这个字段支持最大长度{max}")
    private String cornerPostDesc;

    @Schema(description = "特殊存储要求")
    @Length(max = 200, message = "特殊存储要求支持最大长度{max}")
    private String specialStorageRequire;

    @Schema(description = "装船要求")
    private String loadingRequest;


}
